チャットルームブループリント
チャットルームブループリントは、ao
でチャットルームを迅速に構築するのに役立つ事前設計されたテンプレートです。始めるのに最適な方法であり、ニーズに合わせてカスタマイズできます。
チャットルームブループリントの内容
メンバー:
Members
配列は、チャットルームに登録したユーザーを保存するために使用されます。登録ハンドラー:
register
ハンドラーは、プロセスがチャットルームに参加できるようにします。プロセスがAction = "Register"
タグを持つメッセージを送信すると、ハンドラーはプロセスをMembers
配列に追加し、登録を確認するメッセージをプロセスに送信します。ブロードキャストハンドラー:
broadcast
ハンドラーは、プロセスがチャットルームのすべてのメンバーにメッセージを送信できるようにします。プロセスがAction = "Broadcast"
タグを持つメッセージを送信すると、ハンドラーはチャットルームのすべてのメンバーにメッセージを送信します。
使用方法:
- お好みのテキストエディタを開きます。
- ターミナルを開きます。
aos
プロセスを開始します。.load-blueprint chatroom
と入力します。
ブループリントが読み込まれたことを確認する:
Handlers.list
と入力して、新しく読み込まれたハンドラーを確認します。
チャットルームブループリントの内容:
lua
Members = Members or {}
Handlers.add(
"register",
Handlers.utils.hasMatchingTag("Action", "Register"),
function (msg)
table.insert(Members, msg.From)
Handlers.utils.reply("registered")(msg)
end
)
Handlers.add(
"broadcast",
Handlers.utils.hasMatchingTag("Action", "Broadcast"),
function (msg)
for _, recipient in ipairs(Members) do
ao.send({Target = recipient, Data = msg.Data})
end
Handlers.utils.reply("Broadcasted.")(msg)
end
)